//
//  06_12.c
//  tasks
//
//  Created by Daniel on 2024/6/12.
//

#include <stdio.h>
#include <string.h>
#include <assert.h>
//#include <MacTypes.h>

////实现一个函数，可以左旋转字符串中的k个字符
//void left_rotate(char arr[],int k)
//{
//    unsigned long len = strlen(arr);
//    k %= len;
//    for(int i =0; i < k; i++)
//    {
//        char tmp = arr[0];
//        for(int j = 0; j < len - 1; j++)
//        {
//            arr[j] = arr[j+1];
//        }
//        arr[len-1] = tmp;
//    }
//}
//
//int main()
//{
//    char arr[] = "abcdef";
//    int k = 0;
//    scanf("%d",&k);
//    left_rotate(arr,k);
//    printf("%s\n",arr);
//    return 0;
//}

//void reverse(char* left,char* right)
//{
//    assert(left && right);
//    while (left < right) {
//        char tmp = *left;
//        *left = *right;
//        *right = tmp;
//        left++;
//        right--;
//    }
//}
//
//
//void left_rotate(char arr[],int k)
//{
//    unsigned long len = strlen(arr);
//    k %= len;
//    reverse(arr, arr+k-1);//left
//    reverse(arr+k, arr+len-1);//right
//    reverse(arr, arr+len-1);//whole
//}
//
//int main()
//{
//    char arr[] = "abcdef";
//    int k = 0;
//    scanf("%d",&k);
//    left_rotate(arr,k);
//    printf("%s\n",arr);
//    return 0;
//}


//struct Location
//{
//    int x;
//    int y;
//};
//
//struct Location find_num(int arr[3][3],int r, int c,int k)
//{
//    int x = 0;
//    int y = c - 1;
//    struct Location p = {-1,-1};
//    while (x <= r-1 && y >= 0)
//    {
//        if(k < arr[x][y])
//        {
//            y--;
//        }
//        else if(k > arr[x][y])
//        {
//            x++;
//        }
//        else
//        {
//            p.x = x;
//            p.y = y;
//            return p;
//        }
//    }
//    return p;
//}
//int main()
//{
//    int arr[3][3] = {1,2,3,4,5,6,7,8,9};
//    int k = 0;
//    scanf("%d",&k);
//    struct Location ret = find_num(arr,3,3,k);
//    printf("%d %d\n",ret.x,ret.y);
//    return 0;
//}

//int test(char arr1[],char arr2[])
//{
//    int len1 = (int)strlen(arr1);
//    int len2 = (int)strlen(arr2);
//    if(len1 != len2)
//        return 0;
//    strncat(arr1, arr1,len1);
//    char* ret = strstr(arr1, arr2);//这里报关于内存的错误，不知道为什么
//    if(ret == NULL)
//        return 0;
//    else
//        return 1;
//}
//
//int main()
//{
//    char arr1[20] = "abcdef";
//    char arr2[] = "cdefab";
//    //判断arr2中的字符串是否可以通过arr1中的字符串旋转得到
//    int ret = test(arr1,arr2);
//    printf("%d",ret);
//    return 0;;
//}


//struct Student
//{
//    int id;
//    char name[20];
//    int age;
//}s1,s2;//全局变量 global variable
//
//int main()
//{
//    struct Student s3;//局部变量 local variable
//    return 0;
//}

struct Node
{
    int data;
    struct Node* next;
};
